在超商手打中~
演算法在第一天就有了最基礎的概念介紹了,那有沒有想過假設如果我使用「決策樹演算法」就能不再有其他演算法了嗎?
其實會看到這這個問題就知道,答案其實是可以。
因為演算法就是在有限的計算內解決問題,所以只要能解決問題,就可以!
但這麼多演算法在做選擇的時候會考慮到甚麼?
其實最基礎也是最常聽到的就是「空間複雜度」與「時間複雜度」
空間複雜度可以理解為需要多少記憶體空間,記憶體使用情況為何。
因此我們通常使用"大O符號"(Big O Notation)來表示算法的空間複雜度,例如O(1)表示常數空間複雜度,O(n)表示線性空間複雜度。
時間複雜度指的是在執行演算法時,所需的時間量。簡單來說,它衡量了一個算法的執行速度。
常見的時間複雜度包括 O(1)(常數時間)、O(log n)(對數時間)、O(n)(線性時間)、O(n^2)(平方時間)等。
所以用一句話解釋為
空間複雜度 = 需要動用的資源
時間複雜度 = 需要花費的時間
接下來就要開始思考為何要叫「曖昧對象演算法」! 因為捉模不定、不確因素跟變動因素比一般的多,而且會常常會受時間與環境或事件影響,並不是完全固定可能或條件的演算法。
從這件事開始發想,首先我們要先進行最基本的分群並給予比重、優先級。
首先,分群!!
分群非常重要,相近或物理性質類似的可以放在同一個紙箱裡面做為大類。
因此前面的分類就可以拿來用啦!
我們已知類群有三個,「庫存管理」「商品分析與預測」「銷售策略與追蹤」,我們視這三個類群為平級且為所有資料的基礎,接下來我們必須要將每一個類群取出一個或多個重要的參數並給予權重,這個權重最低為「1」,接下來每提升一個層級便增加50%權重,但注意!!最高無上限,為甚麼,因為這個演算法理論上應該是可以由使用者去訓練他自身的模型,但初期我會先設定五層為上限,避免過度設計與運算。
剩下其他沒標註到的是為第四層,也就是權重「1」,目前這個分類以「錢」為主,因為錢就是最影響營運成本與利潤的因素,而第二層則是以人為主,因為錢的來源一定是消費者,第三層為影響消費者購物衝動或動力的因素,而第四層是其他因素。
完成分群之後,後續就可以思考使用的方法了
希望能夠堅持完成連續30天的挑戰,也希望如果有錯也請各位高手不吝嗇指教!!